package com.wzy.controller;


import com.wzy.entity.ResultInfo;
import com.wzy.entity.User;
import com.wzy.service.Impl.UserServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpSession;
import java.util.Map;

@RestController
@RequestMapping("/user")
public class UserController {
    @Autowired
    private HttpSession session;

    @Autowired
    private UserServiceImpl userService;
    /**
     * 登录的方法
     * @param params 提交的参数，发送的数据是JSON字符串，数据在请求体中POST方法发送
     * 如果登录成功，把用户的信息放在会话域中
     * @return 返回结果信息对象
     */
    //登录
@RequestMapping("/login")
    public ResultInfo login(@RequestBody Map<String,String> params){
        String username=params.get("username");
        String password=params.get("password");
    //调用业务层实现登录的操作
        User user = userService.login(username, password);
        if (user!=null){
            //登录成功，将用户的信息放在会话域中
            session.setAttribute("user",user);
            return new ResultInfo(true,"登录成功");
        }else {
            return new ResultInfo(false,"登录失败");
        }
}

    /**
     * 退出：让会话过期
     */
@RequestMapping("/logout")
    public void logout(){
    session.invalidate();
}
}
